docs(openspec): archive camera changes and sync capability specs - #255
Merged
Merged
Conversation
Commit the OpenSpec artifacts for the camera / WebRTC work.
- Archive the `webrtc-endpoint-and-camera-stream-command` and
`camera-session-status-redesign` changes.
- Sync their deltas into the main specs:
- new `camera-session-lifecycle` (abstract endpoint, `stream` returns
`{protocol, entryPoint}`, no `sessionStatus`)
- `webrtc-signaling-endpoint` (five resources incl. `volatile`
`webrtcError`; `End`/async failures emit `webrtcError`; `sessionStatus`
requirement removed)
- `camera-stream-reference-command` (`--out <uri>` record/serve, passthrough
pipeline serving fragmented MP4 to a browser via MSE, host-only ICE,
connectivity timeout, updated build deps)
- `sbmd-v4-runtime` (add the `volatile` resource mode)
cleithner-comcast
requested review from
kfundecmcsa,
mkkoch,
rchowdcmcsa and
tleacmcsa
as code owners
August 3, 2026 14:36
tleacmcsa
approved these changes
Aug 3, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR commits and archives OpenSpec artifacts for the camera/WebRTC work, and syncs the resulting capability specs into openspec/specs (notably: protocol-agnostic camera session lifecycle, updated WebRTC signaling endpoint contract, reference cameraStream command behavior, and SBMD v4 runtime support for a volatile resource mode).
Changes:
- Adds/updates main capability specs:
camera-session-lifecycle,webrtc-signaling-endpoint,camera-stream-reference-command, and SBMD v4 runtimevolatilemode semantics. - Archives the completed OpenSpec changesets (
webrtc-endpoint-and-camera-stream-command,camera-session-status-redesign) with their proposal/design/tasks and delta specs. - Documents the new WebRTC endpoint contract (role negotiation + bidirectional offer/answer flow) and the reference command’s end-to-end behavior (including teardown/error signaling via
webrtcError).
Reviewed changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| openspec/specs/webrtc-signaling-endpoint/spec.md | New main spec defining the ep/webrtc signaling contract, role negotiation, events, and error signaling. |
| openspec/specs/sbmd-v4-runtime/spec.md | Extends runtime spec to define volatile mode behavior for unconditional event emission (no caching). |
| openspec/specs/camera-stream-reference-command/spec.md | New main spec for the reference app cameraStream/cs command and its --out destinations, signaling flow, and timeouts. |
| openspec/specs/camera-session-lifecycle/spec.md | New main spec for the protocol-agnostic ep/camera session lifecycle (no sessionStatus). |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/tasks.md | Archived implementation checklist for session-status removal + webrtcError + volatile mode. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/specs/webrtc-signaling-endpoint/spec.md | Archived delta spec describing changes to the WebRTC endpoint requirements for the redesign. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/specs/sbmd-v4-runtime/spec.md | Archived delta spec adding volatile mode requirements. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/specs/camera-stream-reference-command/spec.md | Archived delta spec updating reference command behavior around events and teardown. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/specs/camera-session-lifecycle/spec.md | Archived delta spec introducing the abstract camera lifecycle contract. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/proposal.md | Archived proposal capturing motivation/scope/impact for the redesign. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/design.md | Archived design writeup detailing decisions, risks, and migration. |
| openspec/changes/archive/2026-07-16-camera-session-status-redesign/.openspec.yaml | Archived OpenSpec metadata for the redesign change. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/tasks.md | Archived implementation checklist for initial WebRTC endpoint + reference command work. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/specs/webrtc-signaling-endpoint/spec.md | Archived delta spec for the initial WebRTC signaling endpoint capability. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/specs/camera-stream-reference-command/spec.md | Archived delta spec for the initial reference cameraStream capability. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/proposal.md | Archived proposal for the initial WebRTC endpoint and reference command. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/design.md | Archived design for initial WebRTC endpoint and reference command architecture. |
| openspec/changes/archive/2026-07-13-webrtc-endpoint-and-camera-stream-command/.openspec.yaml | Archived OpenSpec metadata for the initial change. |
kfundecmcsa
approved these changes
Aug 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Commit the OpenSpec artifacts for the camera / WebRTC work.
webrtc-endpoint-and-camera-stream-commandandcamera-session-status-redesignchanges.camera-session-lifecycle(abstract endpoint,streamreturns{protocol, entryPoint}, nosessionStatus)webrtc-signaling-endpoint(five resources incl.volatilewebrtcError;End/async failures emitwebrtcError;sessionStatusrequirement removed)camera-stream-reference-command(--out <uri>record/serve, passthrough pipeline serving fragmented MP4 to a browser via MSE, host-only ICE, connectivity timeout, updated build deps)sbmd-v4-runtime(add thevolatileresource mode)